1. Field of the Invention
The present invention relates generally to loading operating systems on computer or server systems. More particularly, the preferred embodiments of the present invention are directed to ensuring the availability of operating system drivers during the operating system installation process. More particularly still, the preferred embodiments of the present invention are directed to storing operating system drivers in unreserved ROM and making those drivers available during the installation of the operating system.
2. Background of the Invention
One of the first functions that must be performed before a computer or server system is ready for operation is installation of the operating system. In early computer systems, this involved loading the Disk Operating System (DOS) to make available the then-familiar “C:>” prompt. For many years, DOS was the predominant operating system, even if another form of Graphical User Interface (GUI) was used. In recent years, however, software companies such as Microsoft, Inc. have created and are disseminating software that is not DOS-based. For example, Windows NT is an operating system and GUI in one package. Likewise, Windows 2000 is an operating system and GUI. These new systems communicate with hardware within the computer system by way of operating system or hardware drivers, rather than through traditional basic input/output system (BIOS) routines. During the process of installing these operating systems/user interfaces, it is required that proper drivers are installed for the hardware resident in the computer system.
Although several software manufacturers make operating systems, e.g., Linux, Novell, and Windows, the problem of installing correct operating system drivers is inherent in each package. In particular, software manufacturers typically bundle, along with the programs that make up their operating system, every operating system driver available as of the release date. However, there may be many months or even years between the release of the operating system and manufacture of the hardware devices within the computer system. Thus, it is inevitable the drivers are needed that are not included with the operating system. Installing an operating system driver other than one of the drivers included with the operating system software typically involves finding the appropriate driver, either on the internet or on a CD ROM included with the computer system. This driver is then typically copied or “punched-out” to a floppy drive (on a second computer as the CD ROM on the computer involved in the installation process is most likely not operational). The floppy disk drive including the required operating system driver is then inserted into the floppy drive unit of the affected computer at the appropriate time during the installation process.
While it is possible to install the correct operating system driver in this manner, it is seen from the above discussion that this is a complicated procedure. In the context of installing the operating system onto a server in a rack of servers, the situation gets more complex as each individual server may not have its own floppy drive; but rather, keyboard, video and floppy drive access may only be available across a communication bus.
Thus, what is needed in the art is a way to provide, during the operating system installation, operating system drivers without requiring the user to punch-out floppy disk drives or search the internet via other computer devices to find the necessary drivers.